Emmanuele Bassi [Mon, 10 May 2021 19:37:13 +0000 (20:37 +0100)]
x11: Always fall back to GLX on NVIDIA
At least until we can guarantee that EGL-X11 works fine there.
Emmanuele Bassi [Mon, 10 May 2021 19:33:02 +0000 (20:33 +0100)]
x11: Move the damage fences into the GLX code
It's GLX-specific anyway, there's no need to complicate things by having
half the code in the generic path, and half in the GLX one.
Emmanuele Bassi [Mon, 10 May 2021 17:36:32 +0000 (18:36 +0100)]
x11: Add debug toggle for preferring GLX
Mostly as a way to compare the EGL and GLX implementations.
Emmanuele Bassi [Mon, 10 May 2021 17:22:34 +0000 (18:22 +0100)]
x11: Add profiler marks for SwapBuffers
Emmanuele Bassi [Mon, 10 May 2021 17:11:05 +0000 (18:11 +0100)]
x11: Use EGL for GL support
This makes the X11 backend similar to the Wayland one, when it comes to
OpenGL.
Fall back to GLX only if EGL support is not available.
Emmanuele Bassi [Mon, 10 May 2021 14:07:08 +0000 (15:07 +0100)]
x11: Decouple GLX from GdkX11GLContext
If we want to add an EGL implementation for the X11 backend, we are
going to need to move the GLX bits into their own class. The first step
is to declare GdkX11GLContext as an abstract type, and then subclass it
into a GdkX11GLContextGLX type, which includes the whole GLX
implementation.
Matthias Clasen [Mon, 10 May 2021 13:26:54 +0000 (13:26 +0000)]
Merge branch 'ci-more-clang' into 'master'
ci: Add clang-extra-tools to the image
See merge request GNOME/gtk!3539
Matthias Clasen [Mon, 10 May 2021 12:51:37 +0000 (08:51 -0400)]
ci: Add clang-extra-tools to the image
Hurray for bite-size packages! Splitting
this off broke our style check in ci.
Matthias Clasen [Sun, 9 May 2021 23:06:49 +0000 (23:06 +0000)]
Merge branch 'file-replace-trap' into 'master'
print-editor: Fix saving
See merge request GNOME/gtk!3536
Matthias Clasen [Sun, 9 May 2021 23:06:25 +0000 (23:06 +0000)]
Merge branch 'wip/exalm/image-button' into 'master'
Ensure consistent header bar buttons in the demo and tests
See merge request GNOME/gtk!3537
Alexander Mikhaylenko [Sun, 9 May 2021 15:53:40 +0000 (20:53 +0500)]
test: Ensure .image-button on header bar buttons
Alexander Mikhaylenko [Sun, 9 May 2021 15:53:05 +0000 (20:53 +0500)]
demo: Ensure .image-button on header bar buttons
Alexander Mikhaylenko [Sun, 9 May 2021 15:52:48 +0000 (20:52 +0500)]
test: Use more appropriate back/forward icons
Alexander Mikhaylenko [Sun, 9 May 2021 15:35:39 +0000 (20:35 +0500)]
demo: Use more appropriate back/forward icons
Matthias Clasen [Sun, 9 May 2021 15:17:48 +0000 (11:17 -0400)]
inspector: Fix saving css
g_file_replace_contents() does not accept -1
as length, unlike similar apis.
Matthias Clasen [Sun, 9 May 2021 15:16:52 +0000 (11:16 -0400)]
print-editor: Fix saving
g_file_replace_contents() does not accept -1 as
length, unlike similar apis.
Matthias Clasen [Sun, 9 May 2021 14:43:03 +0000 (14:43 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
fontbutton: Quote font family names
See merge request GNOME/gtk!3534
Matthias Clasen [Sun, 9 May 2021 14:40:19 +0000 (14:40 +0000)]
Merge branch 'wip/exalm/actionbar' into 'master'
GtkActionBar spacing fixes
See merge request GNOME/gtk!3535
Alexander Mikhaylenko [Sun, 9 May 2021 12:01:36 +0000 (17:01 +0500)]
theme: Fix GtkActionBar spacing
Alexander Mikhaylenko [Sun, 9 May 2021 11:55:48 +0000 (16:55 +0500)]
actionbar: Fix the css node docs
Alexander Mikhaylenko [Sun, 9 May 2021 11:54:59 +0000 (16:54 +0500)]
action-bar: Add start and end style classes to GtkActionBar boxes
Make it possible to add spacing to them from the theme without affecting
the center child should it happen to be a box.
Matthias Clasen [Sun, 9 May 2021 00:53:44 +0000 (20:53 -0400)]
fontbutton: Quote font family names
Otherwise, spaces in family names will trip up
the css parser.
Matthias Clasen [Sat, 8 May 2021 02:07:18 +0000 (02:07 +0000)]
Merge branch 'emoji-full-locale' into 'master'
emoji: Try to load emoji data using both language and territory
See merge request GNOME/gtk!3531
Matthias Clasen [Fri, 7 May 2021 14:55:16 +0000 (14:55 +0000)]
Merge branch 'wip/carlosg/map-emulated-moveresize-window' into 'master'
gdk/x11: Ensure to map the non-ewmh moveresize emulation window before use
See merge request GNOME/gtk!3529
Marco Trevisan (Treviño) [Fri, 7 May 2021 14:03:37 +0000 (16:03 +0200)]
emoji: Try to load emoji data using both language and territory
When loading the emoji data we just try to get the data for a language
while there may be territory specializations and emojibase provides
them.
So, split the loading function and try to load the data for the fully
defined language string (i.e. `it-ch`) before loading the generic one
for the language (i.e. `it`) and eventually falling back to the generic
english.
Carlos Garnacho [Fri, 7 May 2021 13:51:52 +0000 (15:51 +0200)]
gdk/x11: Ensure to map the non-ewmh moveresize emulation window before use
Otherwise, we don't deem it as able to be grabbed, which we intend to do
immediately after.
Matthias Clasen [Fri, 7 May 2021 12:57:55 +0000 (12:57 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
Add some calendar tests
See merge request GNOME/gtk!3528
Matthias Clasen [Fri, 7 May 2021 11:43:19 +0000 (07:43 -0400)]
Add some calendar tests
Check that the getters and setters work as documented.
This tests the fix in
1f8985e47623421.
Matthias Clasen [Fri, 7 May 2021 11:42:59 +0000 (11:42 +0000)]
Merge branch 'carlosgc/calendar-day' into 'master'
calendar: value of day property is shifted by 1
See merge request GNOME/gtk!3524
Matthias Clasen [Fri, 7 May 2021 11:08:57 +0000 (11:08 +0000)]
Merge branch 'fix-3918' into 'master'
demos: Mark non-static signal handler symbols for export
Closes #3918
See merge request GNOME/gtk!3523
Matthias Clasen [Fri, 7 May 2021 11:05:46 +0000 (11:05 +0000)]
Merge branch 'update-emoji-data' into 'master'
emoji: Update data to CLRD v39
See merge request GNOME/gtk!3520
Carlos Garcia Campos [Fri, 7 May 2021 10:13:49 +0000 (12:13 +0200)]
calendar: do not allow to set 0 as day
We no longer unselect the current day when 0 is set, so update the
documentation and the property definition.
Carlos Garcia Campos [Fri, 7 May 2021 09:10:36 +0000 (11:10 +0200)]
calendar: value of day property is shifted by 1
The day is a number between 1 and 31 and that's what we get from
GDateTime.
Chun-wei Fan [Thu, 6 May 2021 09:21:46 +0000 (17:21 +0800)]
demos: Mark non-static signal handler symbols for export
The symbols in the .ui files for the signal handlers and functions must be
exported so that the system can pick them up during execution.
Fixes #3918.
Matthias Clasen [Fri, 7 May 2021 00:34:33 +0000 (00:34 +0000)]
Merge branch 'hidden-mnemonics-fix' into 'master'
label: Make hidden mnemonics work again
See merge request GNOME/gtk!3518
Matthias Clasen [Thu, 6 May 2021 15:33:15 +0000 (15:33 +0000)]
Merge branch 'emoji-data-prefix-fix' into 'master'
emoji: Use a portable and configuration-dependent path to load the data
See merge request GNOME/gtk!3522
Matthias Clasen [Thu, 6 May 2021 15:26:49 +0000 (15:26 +0000)]
Merge branch 'macos' into 'master'
Fix building both X11 and Quartz backends on macOS
See merge request GNOME/gtk!3508
Marco Trevisan (Treviño) [Thu, 6 May 2021 13:34:30 +0000 (15:34 +0200)]
emoji: remove duplicated include
Marco Trevisan (Treviño) [Thu, 6 May 2021 13:32:44 +0000 (15:32 +0200)]
emoji: Use a portable and configuration-dependent path to load the data
Load the emojis data in all the platforms, respecting the configured
GTK_DATA_PREFIX
Dan Cîrnaț [Tue, 4 May 2021 11:52:21 +0000 (13:52 +0200)]
Fix compilation of c++ test: cpp_args
The correct meson argument for c++ is cpp_args.
Remove unnecessary(?) "-Idummy-headers" - breaks build
Dan Cîrnaț [Tue, 4 May 2021 11:51:35 +0000 (13:51 +0200)]
Only compile gtkmountoperation-stub if the X11 backend is not enabled
Dan Cîrnaț [Tue, 4 May 2021 11:49:45 +0000 (13:49 +0200)]
Conditional check for gdesktopappinfo header
GDesktopAppInfo is not available on macOS and needs to be disabled
Marco Trevisan (Treviño) [Thu, 6 May 2021 02:59:04 +0000 (04:59 +0200)]
emoji: Update data to CLRD v39
This is based on version 6.2.0 of emojibase, containing CLRD 39
http://cldr.unicode.org/index/downloads/cldr-39
https://github.com/milesj/emojibase/blob/
b3c9a78/packages/data/CHANGELOG.md
Matthias Clasen [Thu, 6 May 2021 02:53:52 +0000 (22:53 -0400)]
label: Make hidden mnemonics work again
The change in
875a92b95f12dadd6 made labels strip
out underlines earlier, but overlooked that this made
mnemonics not work before the timeout to show them
has passed. That was unintentional. Make mnemonics
work regardless of their visibility, again.
Matthias Clasen [Thu, 6 May 2021 00:52:06 +0000 (00:52 +0000)]
Merge branch 'introspection-test' into 'master'
Add an introspection api test
See merge request GNOME/gtk!3514
Matthias Clasen [Wed, 5 May 2021 00:39:52 +0000 (20:39 -0400)]
Add an introspection api test
Every beginning is small... just check one constant for now.
Matthias Clasen [Wed, 5 May 2021 23:17:07 +0000 (23:17 +0000)]
Merge branch 'update-ci-to-f34' into 'master'
WIP ci: Update the image to Fedora 34
See merge request GNOME/gtk!3516
Matthias Clasen [Wed, 5 May 2021 23:16:39 +0000 (23:16 +0000)]
Merge branch 'msvc-ci' into 'master'
ci: Add MSVC build
See merge request GNOME/gtk!3486
Matthias Clasen [Wed, 5 May 2021 22:58:23 +0000 (18:58 -0400)]
Confine -mf16c to a single source file
We can't use this flag for any code that may get run
outside the __builtin_cpu_supports() check, and meson
doesn't allow per-file cflags. So we have to split this
code off into its own static library.
Xavier Claessens [Wed, 5 May 2021 20:40:57 +0000 (16:40 -0400)]
Meson: gdk-pixbuf jpeg/png options changed to feature
Matthias Clasen [Wed, 5 May 2021 20:31:03 +0000 (16:31 -0400)]
ci: Add pygobject to the images
This will let us add introspection tests in the future.
Matthias Clasen [Wed, 5 May 2021 20:22:32 +0000 (16:22 -0400)]
ci: Show OS release for our containers
Matthias Clasen [Wed, 5 May 2021 19:41:46 +0000 (15:41 -0400)]
Add debug spew to gdk tests
Matthias Clasen [Wed, 5 May 2021 15:23:26 +0000 (15:23 +0000)]
Merge branch 'wl-phys-transform' into 'master'
gdk/wayland: Take transform into account when setting physical size
See merge request GNOME/gtk!3515
Xavier Claessens [Thu, 29 Apr 2021 15:09:04 +0000 (11:09 -0400)]
ci: Add MSVC build
This script is copied from glib CI.
Guido Günther [Wed, 5 May 2021 11:59:26 +0000 (13:59 +0200)]
gdk/wayland: Take transform into account when setting physical size
Width and height of a GdkMonitor are derived via wl_output which
talks about physical dimensions of a device and compositors usually
implement this as the untransformed values (e.g. weston, wlroots).
Since the GTK client has no way to figure out if a monitor was rotated,
transform the physical dimensions according to the applied wayland
transform to have the physical dimensions match the logical ones.
Mutter flips the physical dimensions itself but doesn't announce the
transform so this shouldn't break anything there.
Matthias Clasen [Sun, 2 May 2021 01:02:08 +0000 (21:02 -0400)]
Disable another font-challenged reftest
Matthias Clasen [Sun, 2 May 2021 00:21:54 +0000 (20:21 -0400)]
Help the compiler out
gcc says: error: iteration
2147483649 invokes undefined behavior
[-Werror=aggressive-loop-optimizations]
which of course, never happens because ncols is always >= 2.
Add some assertions to tell the compiler.
Matthias Clasen [Sat, 1 May 2021 23:56:23 +0000 (19:56 -0400)]
ci: Update the image to Fedora 34
This is in preparation to using mutter --headless
for tests.
Matthias Clasen [Wed, 5 May 2021 00:04:16 +0000 (00:04 +0000)]
Merge branch 'bilelmoussaoui/trick-gir-list-position' into 'master'
gtk: trick g-ir scanner to add INVALID_LIST_POSITION
See merge request GNOME/gtk!3513
Bilal Elmoussaoui [Tue, 4 May 2021 21:33:41 +0000 (21:33 +0000)]
gtk: trick g-ir scanner to add INVALID_LIST_POSITION
without it, the define doesn't get picked in the introspection data
Matthias Clasen [Tue, 4 May 2021 21:40:48 +0000 (21:40 +0000)]
Merge branch 'wip/exalm/text-handles' into 'master'
texthandle: Add a contents css node
Closes #3475
See merge request GNOME/gtk!3511
Matthias Clasen [Tue, 4 May 2021 21:03:30 +0000 (21:03 +0000)]
Merge branch 'fix-reftest' into 'master'
Fix the icon-effect-missing reftest
See merge request GNOME/gtk!3512
Matthias Clasen [Tue, 4 May 2021 20:21:37 +0000 (16:21 -0400)]
Fix the icon-effect-missing reftest
This was comparing the included image-missing icon
with the one in the current icontheme on the test
system. Works fine as long as we don't change
the icons (which we just did). To avoid this, set
the icontheme to hicolor for this test, which does
not have the image-missing icon, so we end up getting
the builtin icon for both ui files.
Alexander Mikhaylenko [Tue, 4 May 2021 18:53:05 +0000 (23:53 +0500)]
texthandle: Add a contents css node
Allow to theme it including using css transforms to avoid having assets.
Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/3475
Matthias Clasen [Tue, 4 May 2021 16:18:29 +0000 (16:18 +0000)]
Merge branch 'wip/exalm/switch-icons' into 'master'
icons: Fix switch icon names
Closes #3920
See merge request GNOME/gtk!3509
Matthias Clasen [Tue, 4 May 2021 16:18:00 +0000 (16:18 +0000)]
Merge branch 'wip/exalm/icons' into 'master'
Update icons from adwaita-icon-theme
Closes #2656
See merge request GNOME/gtk!3510
Alexander Mikhaylenko [Tue, 4 May 2021 13:50:31 +0000 (18:50 +0500)]
icons: Update from adwaita-icon-theme
Also add the missing edit-clear RTL variant.
Alexander Mikhaylenko [Tue, 4 May 2021 13:34:51 +0000 (18:34 +0500)]
icons: Remove media-playback-start-symbolic-rtl
See https://gitlab.gnome.org/GNOME/adwaita-icon-theme/-/issues/101
Matthias Clasen [Tue, 4 May 2021 13:17:53 +0000 (13:17 +0000)]
Merge branch 'wip/exalm/css-error' into 'master'
cssselector: Fix max_selector usage
Closes #3100
See merge request GNOME/gtk!3507
Alexander Mikhaylenko [Tue, 4 May 2021 12:49:07 +0000 (17:49 +0500)]
icons: Fix switch icon names
Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/3920
Matthias Clasen [Tue, 4 May 2021 11:53:13 +0000 (11:53 +0000)]
Merge branch 'test.msvc' into 'master'
clipboard-client.c: Include necessary headers for Windows
See merge request GNOME/gtk!3505
Alexander Mikhaylenko [Mon, 3 May 2021 09:41:15 +0000 (14:41 +0500)]
cssselector: Fix max_selector usage
Reverts
2ae8ace78499074a4d0ea6d9272cda0e6b9d5807 other than code style
fixes.
Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/3100
Chun-wei Fan [Mon, 3 May 2021 08:33:14 +0000 (16:33 +0800)]
clipboard-client.c: Include necessary headers for Windows
We need to include io.h and process.h for close() and exit(), as unistd.h may
not be universally available.
Matthias Clasen [Tue, 4 May 2021 00:14:39 +0000 (20:14 -0400)]
4.3.0
Matthias Clasen [Tue, 4 May 2021 00:30:51 +0000 (20:30 -0400)]
Fix dist script for theme reorg
Matthias Clasen [Mon, 3 May 2021 23:55:46 +0000 (23:55 +0000)]
Merge branch 'wip/exalm/textview-selection' into 'master'
textview: Selection rendering fixes
See merge request GNOME/gtk!3503
Matthias Clasen [Mon, 3 May 2021 21:35:55 +0000 (21:35 +0000)]
Merge branch 'gnome-todo-dnd-crash' into 'master'
dragsource: Keep the source alive long enough
See merge request GNOME/gtk!3504
Alexander Mikhaylenko [Mon, 3 May 2021 20:25:36 +0000 (01:25 +0500)]
label: Update selection node and redraw on state changes
Mirror GtkText and GtkTextView.
Matthias Clasen [Mon, 3 May 2021 21:00:17 +0000 (17:00 -0400)]
dragsource: Keep the source alive long enough
When a drop causes the event controller to be finalized
(directly or indirectly), we end up segfaulting while
trying to wrap up the drag operation. So, keep a reference
on the GtkDragSource from when the drag begins to when
it is done.
This fixes a crash in gnome-todo when dragging tasks.
Alexander Mikhaylenko [Mon, 3 May 2021 20:20:53 +0000 (01:20 +0500)]
text: Queue redraw on state changes
Mirror GtkTextView.
Alexander Mikhaylenko [Mon, 3 May 2021 19:32:25 +0000 (00:32 +0500)]
textlayout: Clip selection bounds to the line extents
The rest of the line will be painted separately.
Matthias Clasen [Mon, 3 May 2021 00:03:46 +0000 (20:03 -0400)]
NEWS: Updates
Matthias Clasen [Mon, 3 May 2021 19:21:42 +0000 (19:21 +0000)]
Merge branch 'static-analysis-fixes' into 'master'
Static analyis fixes
See merge request GNOME/gtk!3501
Matthias Clasen [Mon, 3 May 2021 19:21:18 +0000 (19:21 +0000)]
Merge branch 'ebassi/for-master' into 'master'
Install documentation in the appropriate place
See merge request GNOME/gtk!3408
Matthias Clasen [Mon, 3 May 2021 19:20:18 +0000 (19:20 +0000)]
Merge branch 'wip/carlosg/xdg-activation' into 'master'
gdk/wayland: Support the xdg-activation wayland protocol
See merge request GNOME/gtk!3502
Alexander Mikhaylenko [Mon, 3 May 2021 17:05:44 +0000 (22:05 +0500)]
textlayout: Support fully transparent selection text
Pango treats 0 alpha value as a unset alpha, so we have to special case it.
Alexander Mikhaylenko [Mon, 3 May 2021 16:40:37 +0000 (21:40 +0500)]
textview: Invalidate selection when its style changes
Alexander Mikhaylenko [Mon, 3 May 2021 14:03:47 +0000 (19:03 +0500)]
textlayout: Only special case selection rendering for opaque colors
If the selection is partially transparent, it may still be desirable to
see the colors from tags underneath.
Carlos Garnacho [Wed, 2 Dec 2020 16:22:41 +0000 (17:22 +0100)]
gdk/wayland: Support the xdg-activation wayland protocol
This protocol implements the IPC necessary to focus application
windows across launcher/launchee. Add support for it.
Matthias Clasen [Mon, 3 May 2021 11:36:34 +0000 (07:36 -0400)]
updateiconcache: Static analysis fixes
Matthias Clasen [Mon, 3 May 2021 11:36:19 +0000 (07:36 -0400)]
buildertool: Static analysis fixes
Matthias Clasen [Mon, 3 May 2021 11:35:57 +0000 (07:35 -0400)]
printbackendlpr: Static analysis fixes
Matthias Clasen [Mon, 3 May 2021 11:35:40 +0000 (07:35 -0400)]
textbtree: Static analysis fixes
Matthias Clasen [Mon, 3 May 2021 11:35:21 +0000 (07:35 -0400)]
stack: Static analysis fixes
Matthias Clasen [Mon, 3 May 2021 11:35:03 +0000 (07:35 -0400)]
printoperation: Static analysis fixes
Matthias Clasen [Mon, 3 May 2021 11:34:46 +0000 (07:34 -0400)]
listbase: Static analysis fixes
Matthias Clasen [Mon, 3 May 2021 11:34:24 +0000 (07:34 -0400)]
filterlistmodel: Static analysis fixes
Matthias Clasen [Mon, 3 May 2021 11:34:04 +0000 (07:34 -0400)]
emojichooser: Static analysis fixes
Matthias Clasen [Mon, 3 May 2021 11:33:49 +0000 (07:33 -0400)]
fnmatch: Static analysis fixes